Skip to content

Update to nightly-2025-08-04.#508

Open
fee1-dead wants to merge 7 commits intoRust-GPU:mainfrom
fee1-dead-contrib:update-toolchain
Open

Update to nightly-2025-08-04.#508
fee1-dead wants to merge 7 commits intoRust-GPU:mainfrom
fee1-dead-contrib:update-toolchain

Conversation

@fee1-dead
Copy link
Collaborator

based on #420

- We now get warnings about unnecessary parentheses around `dyn` types.
- Spelling of `sf.name.prefer_remapped_unconditionaly` was fixed (now
  ends in `lly`).
- `Pointer::into_parts` has been replaced with
  `Pointer::prov_and_relative_offset`.
- `BuilderMethods::dynamic_alloca` was removed.
- `TargetDataLayout::pointer_{size,align}` were changed from fields to
  methods.
- `AddressSpace::DATA` was renamed `AddressSpace::ZERO`.
- `run_fat_lto`, `optimize_fat`, and `autodiff` were merged into
  `run_and_optimize_fat_lto`, and the parameters were changed.
- `run_thin_lto` parameters were changed.
- `codegen` parameters were changed.
- `LtoModuleCodegen` was removed.
- Minor error message changes:
  - Some line number changes in rustc.
  - Some error message wording tweaks.

The LTO changes occurred in rust-lang/rust PR 143388 and PR 144062.
- `tcx.get_attrs_unchecked(...)` was replaced with
  `tcx.get_all_attrs(...)`.
- `run_link` has been removed.
- `BuilderMethods::tail_call` was added. It's currently `todo!()`.
- Adjust expected test outputs for very minor error message formatting
  changes.
- And update to glam 0.30.8.
@fee1-dead
Copy link
Collaborator Author

fee1-dead commented Jan 8, 2026

The core ICE seems to be that the provided immediate has type fn(f32) -> i8 while from_scalar has a type of *void.

@fee1-dead
Copy link
Collaborator Author

fee1-dead commented Jan 8, 2026

Apparently it was codegenning for https://doc.rust-lang.org/src/core/ptr/const_ptr.rs.html#153

EDIT: more precisely, <*const u8>::addr

@Firestar99
Copy link
Member

@fee1-dead I'll review it in a moment, but I've got a question for you: This PR is based on #420, but we've also had someone else attempt to upgrade the toolchain to 2025-11-13 in #460. Now their branch doesn't work as of right now, and their commit list somehow reverts some merged PRs for whatever reason. But still, which one should we go forward with?
Also bjorn3 added some comments that may help you out as well?

Copy link
Member

@Firestar99 Firestar99 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me, then again, I'm not a rustc guy. I just see CI passing and nothing in the changes that jumps out to me. Just one question :D

About #460: it looks like @dvdplm jumped immediately to 2025-11-02 and later to 2025-11-13, so we should be able to rebase their work on top of this and work from there. (I'll try to rebase it rn)

Comment on lines +3387 to +3394
// HACK(fee1-dead): `MaybeUninit` uses a union which we don't have very good support yet. Replacing all calls to it
// with an `Undef` serves the same purpose and fixes compiler errors
if instance_def_id.is_some_and(|did| {
self.tcx
.is_diagnostic_item(rustc_span::sym::maybe_uninit_uninit, did)
}) {
return self.undef(result_type);
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What an interesting solution, I like it!

Comment on lines +3404 to +3415
fn tail_call(
&mut self,
_llty: Self::Type,
_fn_attrs: Option<&CodegenFnAttrs>,
_fn_abi: &FnAbi<'tcx, Ty<'tcx>>,
_llfn: Self::Value,
_args: &[Self::Value],
_funclet: Option<&Self::Funclet>,
_instance: Option<ty::Instance<'tcx>>,
) {
todo!()
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is from @nnethercote 's commits. CI is passing, so I assume this is never called, but why not make tail_call call call?

@Firestar99
Copy link
Member

I've rebased #460 onto this PR and split it into:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants